home *** CD-ROM | disk | FTP | other *** search
/ Turnbull China Bikeride / Turnbull China Bikeride - Disc 2.iso / STUTTGART / TEMP / GNU / bison / ParserStat < prev    next >
Text File  |  1995-06-28  |  1KB  |  27 lines

  1. Parser States
  2. Previous: <Contextual Precedence=>Contextual> * Next: <Reduce\/Reduce=>ReduceRedv> * Up: <Algorithm=>Algorithm>
  3.  
  4. #Wrap on
  5. {fH3}Parser States{f}
  6.  
  7. The function {fCode}yyparse{f} is implemented using a finite-state machine.
  8. The values pushed on the parser stack are not simply token type codes; they
  9. represent the entire sequence of terminal and nonterminal symbols at or
  10. near the top of the stack.  The current state collects all the information
  11. about previous input which is relevant to deciding what to do next.
  12.  
  13. Each time a look-ahead token is read, the current parser state together
  14. with the type of look-ahead token are looked up in a table.  This table
  15. entry can say, ``Shift the look-ahead token.''  In this case, it also
  16. specifies the new parser state, which is pushed onto the top of the
  17. parser stack.  Or it can say, ``Reduce using rule number {fStrong}n{f}.''
  18. This means that a certain number of tokens or groupings are taken off
  19. the top of the stack, and replaced by one grouping.  In other words,
  20. that number of states are popped from the stack, and one new state is
  21. pushed.
  22.  
  23. There is one other alternative: the table can say that the look-ahead token
  24. is erroneous in the current state.  This causes error processing to begin
  25. (\*Note <Error Recovery=>ErrorRecov>).
  26.  
  27.